#ifndef __STDF_FILE_H__
#define __STDF_FILE_H__


#include "types.h"
#include "stream.h"

#include <vector>

using namespace std;

namespace stdf {

/// \brief STDF File
///
/// StdfFile class will utilize the Stream class to read the stdf binary data
/// and store into a TestData structure (yet to be defined)
class StdfFile {
    public:
        StdfFile();
        StdfFile(string name, RWMode mode);
        virtual ~StdfFile() {}
        virtual bool open( string name, RWMode mode);
        virtual bool read(vector< vector<string> >& data, vector< vector<string> >& headerData);
        virtual bool close() { stdfStream.close(); return true; }
    private:
        string fileName;
        RWMode rwMode;
        Stream stdfStream;
};

} // end namespace

#endif

